
#pragma once
#include "Common/Definitions.h"

namespace ttg_internal
{
	namespace utils
	{
		///<summary>
		/// Defines base type of parameter. Actual type can be reduced
		/// (e.g. interval [1, ..., 10] has type "Int64").
		///</summary>
		public enum class ParameterType
		{
			///<summary>
			/// An error?
			///</summary>
			Void,
			///<summary>
			/// True or false.
			///</summary>
			Bool,
			///<summary>
			/// Integer number.
			///</summary>
			Int64,
			///<summary>
			/// Floating point number.
			///</summary>
			Double,
			///<summary>
			/// Arbitrary string.
			///</summary>
			String,
			///<summary>
			/// Enumeration of user-defined elements.
			///</summary>
			Enum
		};
	}
}